package br.com.ecomanda.dao;

import java.util.List;

import org.hibernate.Criteria;
import org.hibernate.criterion.Restrictions;

import br.com.ecomanda.exceptions.ConexaoComBancoDeDadosException;
import br.com.ecomanda.model.StatusPedido;
import br.com.ecomanda.model.TransicoesStatusPedido;

public class TransicoesStatusPedidoDao extends GenericDao<TransicoesStatusPedido> {
	
	public TransicoesStatusPedidoDao() throws ConexaoComBancoDeDadosException {
		super();
	}

	@SuppressWarnings("unchecked")
	public List<TransicoesStatusPedido> getProximosStatus(StatusPedido statusOrigem){
		Criteria criteria = createCriteria();

		criteria.add( Restrictions.eq("statusPedido2", statusOrigem) );

		List<TransicoesStatusPedido> statusDestino = criteria.list();

		if (statusDestino == null)
			return null;
		else if (statusDestino.size() == 0)
			return null;

		return statusDestino;
	}

}
